# Finnish messages for bison.
# Copyright © 2010, 2011, 2012, 2013, 2021 Free Software Foundation, Inc.
# This file is distributed under the same license as the bison package.
# Jorma Karvonen <karvonen.jorma@gmail.com>, 2009-2013, 2021.
#
msgid ""
msgstr ""
"Project-Id-Version: bison 3.6.93\n"
"Report-Msgid-Bugs-To: bug-bison@gnu.org\n"
"POT-Creation-Date: 2021-03-07 14:52+0100\n"
"PO-Revision-Date: 2021-02-20 00:40+0200\n"
"Last-Translator: Jorma Karvonen <karvonen.jorma@gmail.com>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 2.4.2\n"

#: examples/c/bistromathic/parse.y:148 examples/java/calc/Calc.y:77
msgid "number"
msgstr "numero"

#: examples/c/bistromathic/parse.y:150
msgid "function"
msgstr "funktio"

#: examples/c/bistromathic/parse.y:151
msgid "variable"
msgstr "muuttuja"

#: examples/c/bistromathic/parse.y:365
msgid "%@: syntax error"
msgstr "%@: syntaksivirhe"

#: examples/c/bistromathic/parse.y:366
msgid "%@: syntax error: unexpected %u"
msgstr "%@: syntaksivirhe: odottamaton %u"

#. TRANSLATORS: '%@' is a location in a file, '%u' is an
#. "unexpected token", and '%0e', '%1e'... are expected tokens
#. at this point.
#.
#. For instance on the expression "1 + * 2", you'd get
#.
#. 1.5: syntax error: expected - or ( or number or function or variable before *
#: examples/c/bistromathic/parse.y:374
msgid "%@: syntax error: expected %0e before %u"
msgstr "%@: syntaksivirhe: odotettiin %0e ennen %u"

#: examples/c/bistromathic/parse.y:375
msgid "%@: syntax error: expected %0e or %1e before %u"
msgstr "%@: syntaksivirhe: odotettu %0e tai %1e ennen %u"

#: examples/c/bistromathic/parse.y:376
msgid "%@: syntax error: expected %0e or %1e or %2e before %u"
msgstr "%@: syntaksivirhe: odotettu %0e tai %1e tai %2e ennen %u"

#: examples/c/bistromathic/parse.y:377
msgid "%@: syntax error: expected %0e or %1e or %2e or %3e before %u"
msgstr "%@: syntaksivirhe: odotettu %0e tai %1e tai %2e tai %3e ennen %u"

#: examples/c/bistromathic/parse.y:378
msgid "%@: syntax error: expected %0e or %1e or %2e or %3e or %4e before %u"
msgstr ""
"%@: syntaksivirhe: odotettu %0e tai %1e tai %2e tai %3e tai %4e ennen %u"

#: examples/c/bistromathic/parse.y:379
msgid ""
"%@: syntax error: expected %0e or %1e or %2e or %3e or %4e or %5e before %u"
msgstr ""
"%@: syntaksivirhe: odotettu %0e tai %1e tai %2e tai %3e tai %4e tai %5e "
"ennen %u"

#: examples/c/bistromathic/parse.y:380
msgid ""
"%@: syntax error: expected %0e or %1e or %2e or %3e or %4e or %5e etc., "
"before %u"
msgstr ""
"%@: syntaksivirhe: odotettu %0e tai %1e tai %2e tai %3e tai %4e tai %5e "
"jne., ennen %u"

#: examples/java/calc/Calc.y:75
msgid "end of line"
msgstr "rivin loppu"

#: src/complain.c:153
msgid "S/R conflicts (enabled by default)"
msgstr "S/R-ristiriidat (käytössä oletuksena)"

#: src/complain.c:154
msgid "R/R conflicts (enabled by default)"
msgstr "R/R-ristiriidat (käytössä oletuksena)"

#: src/complain.c:155 src/getargs.c:213
msgid "generate conflict counterexamples"
msgstr "tuota counterexamples-ristiriita"

#: src/complain.c:156
msgid "string aliases not attached to a symbol"
msgstr "merkkijonoaliaksia ei ole liitetty symboliin"

#: src/complain.c:157
msgid "obsolete constructs"
msgstr "vanhentuneet rakenteet"

#: src/complain.c:158
#, c-format
msgid "empty rules without %empty"
msgstr "tyhjä sääntö ilman %empty"

#: src/complain.c:159
msgid "unset or unused midrule values"
msgstr "asettamattomat tai käyttämättömät keskisääntöarvot"

#: src/complain.c:160
msgid "useless precedence and associativity"
msgstr "kelpaamaton ensisijaisuus ja liitettävyys"

#: src/complain.c:161
msgid "incompatibilities with POSIX Yacc"
msgstr "yhteensopimattomuudet POSIX Yacc-ohjelmaan"

#: src/complain.c:162
msgid "all other warnings (enabled by default)"
msgstr "kaikki muut varoitukset (käytössä oletuksena)"

#: src/complain.c:163
msgid "all the warnings except 'counterexamples', 'dangling-alias' and 'yacc'"
msgstr ""
"kaikki varoitukset paitsi 'counterexamples', 'dangling-alias' ja 'yacc'"

#: src/complain.c:164
msgid "turn off warnings in CATEGORY"
msgstr "käännä pois varoitukset KATEGORIAssa"

#: src/complain.c:165
msgid "turn off all the warnings"
msgstr "käännä pois kaikki varoitukset"

#: src/complain.c:166
msgid "treat warnings as errors"
msgstr "kohtele varoituksia virheinä"

#: src/complain.c:192
msgid "Warning categories include:"
msgstr "Varoituskategoriat sisältävät:"

#: src/complain.c:297
msgid "warning"
msgstr "varoitus"

#: src/complain.c:299
msgid "error"
msgstr "virhe"

#: src/complain.c:301
msgid "fatal error"
msgstr "vakava virhe"

#: src/complain.c:501
msgid "note"
msgstr "huomautus"

#: src/complain.c:594
#, c-format
msgid "POSIX Yacc does not support %s"
msgstr "POSIX Yacc ei tue %s"

#: src/complain.c:603
#, c-format
msgid "deprecated directive: %s, use %s"
msgstr "vanhentunut direktiivi: %s, käytä %s"

#: src/complain.c:616
#, c-format
msgid "duplicate directive"
msgstr "kaksoiskappaledirektiivi"

#: src/complain.c:618
#, c-format
msgid "duplicate directive: %s"
msgstr "kaksoiskappaledirektiivi: %s"

#: src/complain.c:619 src/complain.c:628 src/reader.c:135 src/symtab.c:327
#: src/symtab.c:336 src/symtab.c:566
msgid "previous declaration"
msgstr "edellinen esittely"

#: src/complain.c:627
#, c-format
msgid "only one %s allowed per rule"
msgstr "vain yksi %s on sallittu sääntöä kohden"

#: src/complain.c:647
msgid "syntax error"
msgstr "syntaksivirhe"

#: src/complain.c:648
msgid "unexpected %0$s"
msgstr "odottamaton %0$s"

#: src/complain.c:649
msgid "expected %1$s before %0$s"
msgstr "odotettu %1$s ennen %0$s"

#: src/complain.c:650
msgid "expected %1$s or %2$s before %0$s"
msgstr "odotettu %1$s tai %2$s ennen %0$s"

#: src/complain.c:651
msgid "expected %1$s or %2$s or %3$s before %0$s"
msgstr "odotettu %1$s tai %2$s tai %3$s ennen %0$s"

#: src/complain.c:652
msgid "expected %1$s or %2$s or %3$s or %4$s before %0$s"
msgstr "odotettu %1$s tai %2$s tai %3s tai %4$s ennen %0$s"

#  (token in computing) An atomic piece of data (esp. the text of a computer program) for which a meaning may be inferred during parsing. Also called a symbol.
#  (token in computing) An atomic piece of data, such as a word, for which a meaning may be inferred during parsing. Also called a symbol.
#: src/conflicts.c:88
#, c-format
msgid "Conflict between rule %d and token %s resolved as shift"
msgstr ""
"Säännön %d ja merkkisymbolin %s välinen ristiriita on ratkaistu siirtona"

#: src/conflicts.c:98
#, c-format
msgid "Conflict between rule %d and token %s resolved as reduce"
msgstr ""
"Säännön %d ja merkkisymbolin %s välinen ristiriita on ratkaistu supistamisena"

#: src/conflicts.c:107
#, c-format
msgid "Conflict between rule %d and token %s resolved as an error"
msgstr ""
"Säännön %d ja merkkisymbolin %s välinen ristiriita on ratkaistu virheenä"

#: src/conflicts.c:610
#, c-format
msgid "State %d "
msgstr "Tila %d "

#: src/conflicts.c:613
#, c-format
msgid "conflicts: %d shift/reduce, %d reduce/reduce\n"
msgstr "ristiriidat: %d siirto/supistaminen, %d supistaminen/supistaminen\n"

#: src/conflicts.c:616
#, c-format
msgid "conflicts: %d shift/reduce\n"
msgstr "ristiriidat: %d siirto/supistaminen\n"

#: src/conflicts.c:618
#, c-format
msgid "conflicts: %d reduce/reduce\n"
msgstr "ristiriidat: %d supistaminen/supistaminen\n"

#: src/conflicts.c:661
#, c-format
msgid "shift/reduce conflicts for rule %d: %d found, %d expected"
msgstr ""
"siirto/supistaminen -ristiriitoja säännölle %d: %d löytyi, %d odotettiin"

#: src/conflicts.c:667
#, c-format
msgid "reduce/reduce conflicts for rule %d: %d found, %d expected"
msgstr ""
"supistaminen/supistaminen -ristiriitoja säännölle %d: %d löytyi, %d "
"odotettiin"

#: src/conflicts.c:685
#, c-format
msgid "%%expect-rr applies only to GLR parsers"
msgstr "%%expect-rr soveltuu vain GLR-jäsentimiin"

#: src/conflicts.c:705
#, c-format
msgid "shift/reduce conflicts: %d found, %d expected"
msgstr "siirto/supistaminen -ristiriitoja: %d löytyi, %d odotettiin"

#: src/conflicts.c:714
#, c-format
msgid "%d shift/reduce conflict"
msgid_plural "%d shift/reduce conflicts"
msgstr[0] "%d siirto/supistaminen -ristiriita"
msgstr[1] "%d siirto/supistaminen -ristiriitaa"

#: src/conflicts.c:734
#, c-format
msgid "reduce/reduce conflicts: %d found, %d expected"
msgstr "supistaminen/supistaminen -ristiriitoja: %d löytyi, %d odotettiin"

#: src/conflicts.c:743
#, c-format
msgid "%d reduce/reduce conflict"
msgid_plural "%d reduce/reduce conflicts"
msgstr[0] "%d supistaminen/supistaminen -ristiriita"
msgstr[1] "%d supistaminen/supistaminen -ristiriitaa"

#: src/conflicts.c:755
msgid ""
"rerun with option '-Wcounterexamples' to generate conflict counterexamples"
msgstr ""
"suorita uudelleen valitsimella '-Wcounterexamples' counterexamples-"
"ristiriidan tuottamiseksi"

#: src/counterexample.c:122 src/counterexample.c:124
msgid "Example"
msgstr "Esimerkki"

#: src/counterexample.c:122
msgid "First example"
msgstr "Ensimmäinen esimerkki"

#: src/counterexample.c:124
msgid "Second example"
msgstr "Toinen esimerkki"

#: src/counterexample.c:126
msgid "Shift derivation"
msgstr "Siirtoderivaatio"

#: src/counterexample.c:126
msgid "First reduce derivation"
msgstr "Ensimmäinen supistamisderivaatio"

#: src/counterexample.c:128
msgid "Reduce derivation"
msgstr "Supistamisderivaatio"

#: src/counterexample.c:128
msgid "Second reduce derivation"
msgstr "Toinen supistamisderivaatio"

#: src/counterexample.c:1292 src/counterexample.c:1296
#, c-format
msgid "shift/reduce conflict on token %s"
msgstr "merkkisymbolin %s siirto/supistaminen -ristiriita"

#: src/counterexample.c:1297 src/counterexample.c:1339
msgid ":"
msgstr ":"

#: src/counterexample.c:1327 src/counterexample.c:1335
#, c-format
msgid "reduce/reduce conflict on token %s"
msgid_plural "reduce/reduce conflict on tokens %s"
msgstr[0] "supistaminen/supistaminen -ristiriita merkkisymbolissa %s"
msgstr[1] "supistaminen/supistaminen -ristiriita merkkisymboleissa %s"

#: src/files.c:139
#, c-format
msgid "%s: cannot open"
msgstr "%s: tiedoston avaus epäonnistui"

#: src/files.c:155
#, c-format
msgid "input/output error"
msgstr "syöttö/tulostevirhe"

#: src/files.c:158
#, c-format
msgid "cannot close file"
msgstr "tiedoston sulkeminen epäonnistui"

#: src/files.c:456
#, c-format
msgid "refusing to overwrite the input file %s"
msgstr "kieltäydytään korvaamasta syötetiedostoa %s"

#: src/files.c:464
#, c-format
msgid "conflicting outputs to file %s"
msgstr "keskenään ristiriitaisia tulosteita tiedostoon %s"

#: src/fixits.c:122
#, c-format
msgid "%s: cannot backup"
msgstr "%s: varmuuskopiointi epäonnistui"

#: src/getargs.c:173
msgid "colorize the output"
msgstr "väritä tuloste"

#: src/getargs.c:174
msgid "don't colorize the output"
msgstr "älä väritä tulostetta"

#: src/getargs.c:175
msgid "colorize if the output device is a tty"
msgstr "väritä, jos tulostelaite on tty"

#. TRANSLATORS: Use the same translation for WHEN as in the
#. --color=WHEN help message.
#: src/getargs.c:196
msgid "WHEN can be one of the following:"
msgstr "MILLOIN voi olla yksi seuraavista:"

#: src/getargs.c:209
msgid "describe the states"
msgstr "kuvaa tilat"

#: src/getargs.c:210
msgid "complete the core item sets with their closure"
msgstr "täydennä yhdinmerkintäjoukot niiden sulkemisella"

#: src/getargs.c:211
msgid "explicitly associate lookahead tokens to items"
msgstr "eksplisiittisesti liitä ennakointimerkkisymbolit merkintöihin"

#: src/getargs.c:212
msgid "describe shift/reduce conflicts solving"
msgstr "kuvaile siirto/supistaminen -ristiriitojen ratkaisu"

#: src/getargs.c:214
msgid "include all the above information"
msgstr "sisällytä kaikki yllä oleva tieto"

#: src/getargs.c:215
msgid "disable the report"
msgstr "ota ilmoitukset pois käytöstä"

#. TRANSLATORS: Use the same translation for THINGS as in the
#. --report=THINGS help message.
#: src/getargs.c:238
msgid "THINGS is a list of comma separated words that can include:"
msgstr "ASIAT on pilkulla eroteltujen sanojen luettelo, joka voi sisältää:"

#: src/getargs.c:301
msgid "TRACES is a list of comma separated words that can include:"
msgstr "JÄLJET on pilkulla eroteltujen sanojen luettelo, joka voi sisältää:"

#: src/getargs.c:313
msgid "show errors with carets"
msgstr "näytä virheet sirkumfleksillä"

#: src/getargs.c:314
msgid "show machine-readable fixes"
msgstr "näytä koneluettavat korjaukset"

#: src/getargs.c:315
msgid "do not generate any file"
msgstr "älä tuota yhtään tiedostoa"

#: src/getargs.c:316
msgid "all of the above"
msgstr "kaikki yllä"

#: src/getargs.c:317
msgid "disable all of the above"
msgstr "poista käytöstä kaikki yllä"

#. TRANSLATORS: Use the same translation for FEATURES as in the
#. --feature=FEATURES help message.
#: src/getargs.c:339
msgid "FEATURES is a list of comma separated words that can include:"
msgstr ""
"OMINAISUUDET on pilkulla eroteltujen sanojen luettelo, joka voi sisältää:"

#: src/getargs.c:354
#, c-format
msgid "Try '%s --help' for more information.\n"
msgstr "Pyydä lisätietoja komennolla ’%s --help’.\n"

#: src/getargs.c:363
#, c-format
msgid "Usage: %s [OPTION]... FILE\n"
msgstr "Käyttö: %s [VALITSIN]... TIEDOSTO\n"

#: src/getargs.c:364
msgid ""
"Generate a deterministic LR or generalized LR (GLR) parser employing\n"
"LALR(1), IELR(1), or canonical LR(1) parser tables.\n"
"\n"
msgstr ""
"Tuota deterministinen LR- tai yleistetty LR (GLR) -jäsennin, joka käyttää\n"
"LALR(1)-, IELR(1)-, tai kanonisia LR(1)-jäsennintauluja.\n"
"\n"

#: src/getargs.c:370
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
"Pakolliset argumentit pitkille valitsimille ovat pakollisia myös lyhyille "
"valitsimille.\n"

#: src/getargs.c:373
msgid "The same is true for optional arguments.\n"
msgstr "Sama pätee valinnaisille argumenteille.\n"

#: src/getargs.c:378
msgid ""
"Operation Modes:\n"
"  -h, --help                 display this help and exit\n"
"  -V, --version              output version information and exit\n"
"      --print-localedir      output directory containing locale-dependent "
"data\n"
"                             and exit\n"
"      --print-datadir        output directory containing skeletons and XSLT\n"
"                             and exit\n"
"  -u, --update               apply fixes to the source grammar file and "
"exit\n"
"  -f, --feature[=FEATURES]   activate miscellaneous features\n"
"\n"
msgstr ""
"Toimintotilat:\n"
"  -h, --help                 näytä tämä opaste ja poistu\n"
"  -V, --version              tulosta versiotiedot ja poistu\n"
"      --print-localedir      tulosta hakemisto, joka sisältää maa-"
"asetuksesta riippuvaa dataa\n"
"                             ja poistu\n"
"      --print-datadir        tulosta hakemisto, joka sisältää rungot ja XSLT-"
"koodin\n"
"                             ja poistu\n"
"  -u, --update               toteuta korjaukset lähdekielioppitiedostoon ja "
"poistu\n"
"  -f, --feature[=OMINAISUUS] aktivoi sekalaiset ominaisuudet\n"
"\n"

#: src/getargs.c:394
msgid ""
"Diagnostics:\n"
"  -W, --warnings[=CATEGORY]  report the warnings falling in CATEGORY\n"
"      --color[=WHEN]         whether to colorize the diagnostics\n"
"      --style=FILE           specify the CSS FILE for colorizer diagnostics\n"
"\n"
msgstr ""
"Diagnostiikka:\n"
"  -W, --warnings[=KATEGORIA]  ilmoita KATEGORIAan kuuluvat varoitukset\n"
"      --color[=MILLOIN]         milloin diagnostiikka väritetään\n"
"      --style=TIEDOSTO       määritä CSS-TIEDOSTO diagnostiikan "
"värittämiseen\n"
"\n"

#: src/getargs.c:408
#, c-format
msgid ""
"Tuning the Parser:\n"
"  -L, --language=LANGUAGE          specify the output programming language\n"
"  -S, --skeleton=FILE              specify the skeleton to use\n"
"  -t, --debug                      instrument the parser for tracing\n"
"                                   same as '-Dparse.trace'\n"
"      --locations                  enable location support\n"
"  -D, --define=NAME[=VALUE]        similar to '%define NAME VALUE'\n"
"  -F, --force-define=NAME[=VALUE]  override '%define NAME VALUE'\n"
"  -p, --name-prefix=PREFIX         prepend PREFIX to the external symbols\n"
"                                   deprecated by '-Dapi.prefix={PREFIX}'\n"
"  -l, --no-lines                   don't generate '#line' directives\n"
"  -k, --token-table                include a table of token names\n"
"  -y, --yacc                       emulate POSIX Yacc\n"
msgstr ""
"Jäsentimen säätö:\n"
"  -L, --language=KIELI             määrittele tulosteohjelmointikieli\n"
"  -S, --skeleton=TIEDOSTO          määrittele käytettävä runko\n"
"  -t, --debug                      lisää jäsennin vianjäljitykseen\n"
"                                   sama kuin ’-Dparse.trace’\n"
"      --locations                  ota käyttöön paikkojen laskenta\n"
"  -D, --define=NIMI[=ARVO]         samanlainen kuin ’%define NIMI \"ARVO\"’\n"
"  -F, --force-define=NIMI[=ARVO]   korvaa määrittelyn ’%define NIMI \"ARVO"
"\"’\n"
"  -p, --name-prefix=ETULIITE       lisää ETULIITE ulkoisiin symboleihin\n"
"                                   valitsimen ’-Dapi.prefix=ETULIITE’ "
"vanhentama\n"
"  -l, --no-lines                   älä tuota ’#line’-direktiivejä\n"
"  -k, --token-table                sisällytä merkkisymbolinimien taulu\n"
"  -y, --yacc                       matki POSIX Yacc -ohjelmaa\n"
"\n"

#: src/getargs.c:427
#, fuzzy
msgid ""
"Output Files:\n"
"      --defines[=FILE]          also produce a header file\n"
"  -d                            likewise but cannot specify FILE (for POSIX "
"Yacc)\n"
"  -r, --report=THINGS           also produce details on the automaton\n"
"      --report-file=FILE        write report to FILE\n"
"  -v, --verbose                 same as '--report=state'\n"
"  -b, --file-prefix=PREFIX      specify a PREFIX for output files\n"
"  -o, --output=FILE             leave output to FILE\n"
"  -g, --graph[=FILE]            also output a graph of the automaton\n"
"  -x, --xml[=FILE]              also output an XML report of the automaton\n"
"  -M, --file-prefix-map=OLD=NEW replace prefix OLD with NEW when writing "
"file paths\n"
"                                in output files\n"
msgstr ""
"Tulostetiedostot:\n"
"      --defines[=TIEDOSTO]   tuota myös otsaketiedosto\n"
"  -d                         samoin, mutta TIEDOSTOn (POSIX \n"
"                                Yacc-yhteensopivuus)määrittely epäonnistui\n"
"  -r, --report=ASIAT         tuota myös yksityiskohdat automaatissa\n"
"      --report-file=TIEDOSTO kirjoita raportti TIEDOSTOon\n"
"  -v, --verbose              sama kuin ’--report=state’\n"
"  -b, --file-prefix=ETULIITE määrittele ETULIITE tulostetiedostoille\n"
"  -o, --output=TIEDOSTO      jätä tuloste TIEDOSTOon\n"
"  -g, --graph[=TIEDOSTO]     tulosta myös automaatin kaavio\n"
"  -x, --xml[=TIEDOSTO]       tulosta myös automaatin XML-raportti\n"
"-M, --file-prefix-map=VANHA=UUSI korvaa etuliite VANHA etuliitteellä UUSI "
"kun kirjoitetaan\n"
"                                tiedostopolkuja tulostetiedostoissa\n"
"\n"

#: src/getargs.c:446
#, c-format
msgid "Report bugs to <%s>.\n"
msgstr "Ilmoita virheistä (englanniksi) osoitteeseen <%s>.\n"

#: src/getargs.c:447
#, c-format
msgid "%s home page: <%s>.\n"
msgstr "%s kotisivu: <%s>.\n"

#: src/getargs.c:448
#, fuzzy
msgid "General help using GNU software: <https://www.gnu.org/gethelp/>.\n"
msgstr ""
"Yleinen opaste GNU-ohjelmistojen käyttämisestä: <http://www.gnu.org/gethelp/"
">.\n"

#. TRANSLATORS: Replace LANG_CODE in this URL with your language code to
#. form one of the URLs at https://translationproject.org/team/.
#. Otherwise, replace the entire URL with your translation team's
#. email address.
#: src/getargs.c:462
#, fuzzy
msgid "Report translation bugs to <https://translationproject.org/team/>.\n"
msgstr ""
"Ilmoita käännösvirheistä osoitteeseen <translation-team-fi@lists.sourceforge."
"net>.\n"

#: src/getargs.c:465
msgid "For complete documentation, run: info bison.\n"
msgstr "Täydellisen dokumentaation saat suorittamalla komennon: info bison.\n"

#: src/getargs.c:481
#, c-format
msgid "bison (GNU Bison) %s"
msgstr "bison (GNU Bison) %s"

#: src/getargs.c:483
msgid "Written by Robert Corbett and Richard Stallman.\n"
msgstr "Kirjoittajat: Robert Corbett ja Richard Stallman.\n"

#: src/getargs.c:487
#, c-format
msgid "Copyright (C) %d Free Software Foundation, Inc.\n"
msgstr "Copyright © %d Free Software Foundation, Inc.\n"

#: src/getargs.c:490
msgid ""
"This is free software; see the source for copying conditions.  There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
msgstr ""
"Tämä on vapaa ohjelmisto: katso lähdekoodista kopiointiehdot. Ohjelmalle EI\n"
"OLE MITÄÄN TAKUUTA; ei edes KAUPPAKELPOISUUDELLE tai SOPIVUUDELLE TIETTYYN "
"TARKOITUKSEEN.\n"

#: src/getargs.c:512
#, c-format
msgid "multiple skeleton declarations are invalid"
msgstr "monirunkoesittelyt ovat virheellisiä"

#: src/getargs.c:529
#, c-format
msgid "%s: invalid language"
msgstr "%s: virheellinen kieli"

#: src/getargs.c:532
msgid "multiple language declarations are invalid"
msgstr "monikieliesittelyt ovat virheellisiä"

#: src/getargs.c:735
#, c-format
msgid "invalid argument for %s: %s"
msgstr "virheellinen argumentti kohteelle %s: %s"

#: src/getargs.c:843
#, c-format
msgid "deprecated option: %s, use %s"
msgstr "vanhentunut valitsin: %s, käytä %s"

#: src/getargs.c:877
#, c-format
msgid "missing operand"
msgstr "puuttuva operandi"

#: src/getargs.c:879
#, c-format
msgid "extra operand %s"
msgstr "ylimääräinen operandi %s"

#: src/gram.c:208
msgid "Grammar"
msgstr "Kielioppi"

#: src/graphviz.c:46
#, c-format
msgid ""
"// Generated by %s.\n"
"// Report bugs to <%s>.\n"
"// Home page: <%s>.\n"
"\n"
msgstr ""
"// Tuottaja: %s.\n"
"// Ilmoita vioista osoitteeseen <%s>.\n"
"// Ilmoita käännösvirheistä osoitteeseen <translation-team-fi@lists."
"sourceforge.net>.\n"
"// Kotisivu: <%s>.\n"
"\n"

#: src/i18n-strings.c:35
msgid "end of file"
msgstr "tiedoston loppu"

#: src/i18n-strings.c:36
msgid "invalid token"
msgstr "virheellinen merkkisymboli"

#: src/location.c:138 src/scan-gram.l:956
#, c-format
msgid "line number overflow"
msgstr "rivinumeron ylivuoto"

#: src/location.c:140
#, c-format
msgid "column number overflow"
msgstr "sarakenumeron ylivuoto"

#: src/location.c:143
#, c-format
msgid "byte number overflow"
msgstr "tavunumeron ylivuoto"

#. TRANSLATORS: This is used when a line is too long, and is
#. displayed truncated.  Use an ellipsis appropriate for your
#. language, remembering that "…" (U+2026 HORIZONTAL ELLIPSIS)
#. sometimes misdisplays and that "..." (three ASCII periods) is a
#. safer choice in some locales.
#: src/location.c:242
msgid "..."
msgstr "..."

#: src/main.c:162
msgid "rule useless in parser due to conflicts"
msgstr "sääntö ei kelpaa jäsentimessä ristiriitojen vuoksi"

#: src/main.c:256
#, c-format
msgid "fix-its can be applied.  Rerun with option '--update'."
msgstr ""
"korjaukset voidaan toteuttaa.  Suorita uudelleen valitsimella '--update'."

#: src/muscle-tab.c:527
#, c-format
msgid "%%define variable %s redefined"
msgstr "%%define-muuttuja %s on määritelty uudelleen"

#: src/muscle-tab.c:530 src/symtab.c:347
msgid "previous definition"
msgstr "edellinen määrittely"

#: src/muscle-tab.c:589 src/muscle-tab.c:690 src/muscle-tab.c:749
#, c-format
msgid "%s: undefined %%define variable %s"
msgstr "%s: määrittelemätön %%define-muuttuja %s"

#: src/muscle-tab.c:623
#, c-format
msgid "%%define variable '%s' requires '{...}' values"
msgstr "%%define-muuttuja ’%s’ vaatii '{...}'-arvot"

#: src/muscle-tab.c:628
#, c-format
msgid "%%define variable '%s' requires keyword values"
msgstr "%%define-muuttuja ’%s’ vaatii avainsana-arvot"

#: src/muscle-tab.c:633
#, c-format
msgid "%%define variable '%s' requires '\"...\"' values"
msgstr "%%define-muuttuja ’%s’ vaatii '\"...\"'-arvot"

#: src/muscle-tab.c:684
#, c-format
msgid "invalid value for %%define Boolean variable %s"
msgstr "virheellinen arvo kohteelle %%define-booleanmuuttuja %s"

#: src/muscle-tab.c:737
#, c-format
msgid "invalid value for %%define variable %s: %s"
msgstr "virheellinen arvo kohteelle %%define-muuttuja %s: %s"

#: src/muscle-tab.c:741
#, c-format
msgid "accepted value: %s"
msgstr "hyväksytty arvo: %s"

#: src/parse-gram.y:168
msgid "string"
msgstr "merkkijono"

#: src/parse-gram.y:169
msgid "translatable string"
msgstr "suomennettava merkkijono"

#: src/parse-gram.y:215
msgid "[identifier]"
msgstr "[tunnistin]"

#: src/parse-gram.y:216
msgid "character literal"
msgstr "merkkiliteraali"

#: src/parse-gram.y:218
msgid "epilogue"
msgstr "epilogi"

#: src/parse-gram.y:220
msgid "identifier"
msgstr "tunniste"

#: src/parse-gram.y:221
msgid "identifier:"
msgstr "tunniste:"

#: src/parse-gram.y:226
msgid "<tag>"
msgstr "<tagi>"

#: src/parse-gram.y:251
msgid "integer literal"
msgstr "kokonaislukuliteraali"

#: src/parse-gram.y:773
#, c-format
msgid "character literals cannot be nonterminals"
msgstr "merkkiliteraalit eivät voi olla nonterminal-symboleja"

#: src/parse-gram.y:779
#, c-format
msgid "character literals cannot be used together with %s"
msgstr "merkkiliteraaleja ei voi käyttää yhdessä %s:n kanssa"

#: src/parse-gram.y:782
#, c-format
msgid "definition of %s"
msgstr "%s:n määrittely"

#: src/parse-gram.y:933
#, c-format
msgid "missing identifier in parameter declaration"
msgstr "puuttuva tunniste parametriesittelyssä"

#: src/parse-gram.y:1052
#, c-format
msgid "invalid version requirement: %s"
msgstr "virheellinen versiovaatimus: %s"

#: src/parse-gram.y:1063
#, c-format
msgid "require bison %s, but have %s"
msgstr "vaatii bison %s, mutta on %s"

#: src/print-graph.c:62 src/print.c:350
#, c-format
msgid "State %d"
msgstr "Tila %d"

#: src/print.c:141
#, c-format
msgid "shift, and go to state %d\n"
msgstr "siirto, ja siirry tilaan %d\n"

#: src/print.c:143
#, c-format
msgid "go to state %d\n"
msgstr "siirry tilaan %d\n"

#: src/print.c:178
msgid "error (nonassociative)\n"
msgstr "virhe (ei-assosiatiivinen)\n"

#: src/print.c:200
#, c-format
msgid "reduce using rule %d (%s)"
msgstr "supistaminen käyttäen sääntöä %d (%s)"

#: src/print.c:203
#, c-format
msgid "accept"
msgstr "hyväksy"

#: src/print.c:240 src/print.c:314
msgid "$default"
msgstr "$default"

#: src/print.c:376
msgid "Terminals, with rules where they appear"
msgstr "Terminal-symbolit, säännöillä missä niin tarvitaan"

#: src/print.c:403
msgid "Nonterminals, with rules where they appear"
msgstr "Nonterminal-symbolit, säännöillä missä niitä tarvitaan"

#: src/print.c:429
msgid "on left:"
msgstr "vasemmalla:"

#: src/print.c:438
msgid "on right:"
msgstr "oikealla:"

#: src/print.c:460
msgid "Rules useless in parser due to conflicts"
msgstr "Säännöt eivät kelpaa jäsentimessä ristiriitojen vuoksi"

#: src/reader.c:60
#, c-format
msgid "multiple %s declarations"
msgstr "useita %s esittelyjä"

#: src/reader.c:130
#, c-format
msgid "result type clash on merge function %s: <%s> != <%s>"
msgstr "tulostyyppien yhteentörmäys merge-funktiossa %s: <%s> != <%s>"

#: src/reader.c:205
#, c-format
msgid "duplicated symbol name for %s ignored"
msgstr "kaksoiskappalesymbolinimi kohteelle %s ohitettiin"

#: src/reader.c:241
#, c-format
msgid "rule given for %s, which is a token"
msgstr "sääntö annettu kohteelle %s, joka on merkkisymboli"

#: src/reader.c:298
#, c-format
msgid "type clash on default action: <%s> != <%s>"
msgstr "tyyppien törmäys vastakkain oletustoiminassa: <%s> != <%s>"

#: src/reader.c:321
#, c-format
msgid "empty rule for typed nonterminal, and no action"
msgstr "tyhjä sääntö tyypitetylle nonterminal-symbolille, ja ei toimintoa"

#: src/reader.c:337
#, c-format
msgid "unused value: $%d"
msgstr "käyttämätön arvo: $%d"

#: src/reader.c:339
#, c-format
msgid "unset value: $$"
msgstr "asettamaton arvo: $$"

#: src/reader.c:349
#, c-format
msgid "%%empty on non-empty rule"
msgstr "%%empty ei-tyhjässä säännössä"

#: src/reader.c:359
#, c-format
msgid "empty rule without %%empty"
msgstr "tyhjä sääntö ilman %%empty"

#: src/reader.c:375
#, c-format
msgid "token for %%prec is not defined: %s"
msgstr "merkkisymbolia kohteelle %%prec ei ole määritelty: %s"

#: src/reader.c:380
#, c-format
msgid "only midrule actions can be typed: %s"
msgstr "vain keskisääntötoiminnot voidaan tyypittää: %s"

#: src/reader.c:507 src/reader.c:529 src/reader.c:600
#, c-format
msgid "%s affects only GLR parsers"
msgstr "%s vaikuttaa vain GLR-jäsentimiin"

#: src/reader.c:510
#, c-format
msgid "%s must be followed by positive number"
msgstr "kohdetta %s on seurattava postiivinen numero"

#: src/reader.c:565
#, c-format
msgid "POSIX Yacc does not support typed midrule actions"
msgstr "POSIX Yacc ei tue tyypitettyjä keskisääntötoimintoja"

#: src/reader.c:669
#, c-format
msgid "rule is too long"
msgstr "sääntö on liian pitkä"

#: src/reader.c:781
#, c-format
msgid "no rules in the input grammar"
msgstr "ei sääntöjä syötekieliopissa"

#: src/reduce.c:225
msgid "rule useless in grammar"
msgstr "sääntö ei kelpaa kieliopissa"

#: src/reduce.c:280
#, c-format
msgid "nonterminal useless in grammar: %s"
msgstr "nonterminal-symboli ei kelpaa kieliopissa: %s"

#: src/reduce.c:321
msgid "Nonterminals useless in grammar"
msgstr "Nonterminal-symbolit eivät kelpaa kieliopissa"

#: src/reduce.c:333
msgid "Terminals unused in grammar"
msgstr "Päätteet ovat käyttämättömiä kieliopissa"

#: src/reduce.c:342
msgid "Rules useless in grammar"
msgstr "Säännöt eivät kelpaa kieliopissa"

#: src/reduce.c:355
#, c-format
msgid "%d nonterminal useless in grammar"
msgid_plural "%d nonterminals useless in grammar"
msgstr[0] "%d nonterminal-symboli ei kelpaa kieliopissa"
msgstr[1] "%d nonterminal-symbolit eivät kelpaa kieliopissa"

#: src/reduce.c:360
#, c-format
msgid "%d rule useless in grammar"
msgid_plural "%d rules useless in grammar"
msgstr[0] "%d sääntö on hyödytön kieliopissa"
msgstr[1] "%d sääntöä ovat hyödyttömiä kieliopissa"

#: src/reduce.c:386
#, c-format
msgid "start symbol %s does not derive any sentence"
msgstr "aloitussymboli %s ei johda lauseeseen"

#: src/scan-code.l:158
#, c-format
msgid "stray '%s'"
msgstr "yksinäinen ’%s’"

#: src/scan-code.l:330
#, c-format
msgid "refers to: %c%s at %s"
msgstr "viittaa kohteeseen: %c%s osoitteessa %s"

#: src/scan-code.l:354
#, c-format
msgid "possibly meant: %c"
msgstr "mahdollisesti tarkoitti: %c"

#: src/scan-code.l:363
#, c-format
msgid ", hiding %c"
msgstr ", piilotetaan %c"

#: src/scan-code.l:371
#, c-format
msgid " at %s"
msgstr " osoitteessa %s"

#: src/scan-code.l:375
#, c-format
msgid ", cannot be accessed from midrule action at $%d"
msgstr ", ei kyetä käyttämään keskisääntötoiminnosta osoitteessa $%d"

#: src/scan-code.l:422 src/scan-gram.l:878
#, c-format
msgid "integer out of range: %s"
msgstr "kokonaisluku on lukualueen ulkopuolella: %s"

#: src/scan-code.l:496
#, c-format
msgid "invalid reference: %s"
msgstr "virheellinen viite: %s"

#: src/scan-code.l:503
#, c-format
msgid "syntax error after '%c', expecting integer, letter, '_', '[', or '$'"
msgstr ""
"syntaksivirhe merkin ’%c’ jälkeen, odotettiin kokonaislukua, kirjainta, tai "
"merkkejä ’_’, ’[’, ’$’"

#: src/scan-code.l:509
#, c-format
msgid "symbol not found in production before $%d: %.*s"
msgstr "symbolia ei löytynyt tuotannosta ennen $%d: %.*s"

#: src/scan-code.l:514
#, c-format
msgid "symbol not found in production: %.*s"
msgstr "symbolia ei löytynyt tuotannosta: %.*s"

#: src/scan-code.l:528
#, c-format
msgid "misleading reference: %s"
msgstr "harhaanjohtava viite: %s"

#: src/scan-code.l:543
#, c-format
msgid "ambiguous reference: %s"
msgstr "ei-yksiselitteinen viite: %s"

#: src/scan-code.l:579
#, c-format
msgid "explicit type given in untyped grammar"
msgstr "eksplisiittinen tyyppi annettu tyypittömässä kieliopissa"

#: src/scan-code.l:634
#, c-format
msgid "$$ for the midrule at $%d of %s has no declared type"
msgstr "$$ keskisääntölohkolle osoitteessa $%d/%s ei ole esiteltyä tyyppiä"

#: src/scan-code.l:640
#, c-format
msgid "$$ of %s has no declared type"
msgstr "$$/%s ei ole esitelty tyyppi"

#: src/scan-code.l:666
#, c-format
msgid "$%s of %s has no declared type"
msgstr "$%s/%s ei ole esitelty tyyppi"

#: src/scan-code.l:689
#, c-format
msgid "multiple occurrences of $%d with api.value.automove"
msgstr "useita $%d:n esiintymisiä rakenteessa api.value.automove"

#: src/scan-gram.l:93
#, c-format
msgid "invalid number after \\-escape: %s"
msgstr "virheellinen numero \\-koodinvaihtomerkin jälkeen: %s"

#: src/scan-gram.l:214
#, c-format
msgid "stray ',' treated as white space"
msgstr "yksinäinen ’,’ käsitellään tyhjemerkkinä"

#: src/scan-gram.l:308
#, c-format
msgid "invalid directive: %s"
msgstr "virheellinen direktiivi: %s"

#: src/scan-gram.l:330
#, c-format
msgid "invalid identifier: %s"
msgstr "virheellinen tunniste: %s"

#: src/scan-gram.l:384
msgid "invalid character"
msgid_plural "invalid characters"
msgstr[0] "virheellinen merkki: %s"
msgstr[1] "virheellisiä merkkejä: %s"

#: src/scan-gram.l:404
#, c-format
msgid "invalid null character"
msgstr "virheellinen null-merkki"

#: src/scan-gram.l:462
#, c-format
msgid "unexpected identifier in bracketed name: %s"
msgstr "odottamaton tunniste sulkumerkillisessä nimessä: %s"

#: src/scan-gram.l:486
#, c-format
msgid "an identifier expected"
msgstr "odotettiin tunnistetta"

#: src/scan-gram.l:493
msgid "invalid character in bracketed name"
msgid_plural "invalid characters in bracketed name"
msgstr[0] "virheellinen merkki sulkeissa olevassa nimessä: %s"
msgstr[1] "virheellisiä merkkejä sulkeissa olevassa nimessä: %s"

#: src/scan-gram.l:566 src/scan-gram.l:581
#, c-format
msgid "POSIX Yacc does not support string literals"
msgstr "POSIX Yacc ei tue merkkijonoliteraaleja"

#: src/scan-gram.l:604
#, c-format
msgid "empty character literal"
msgstr "tyhjä merkkiliteraali"

#: src/scan-gram.l:610
#, c-format
msgid "extra characters in character literal"
msgstr "ylimääräisiä merkkejä merkkiliteraalissa"

#: src/scan-gram.l:689
#, c-format
msgid "invalid character after \\-escape: %s"
msgstr "virheellinen merkki \\-koodinvaihtomerkin jälkeen: %s"

#: src/scan-gram.l:871
#, c-format
msgid "POSIX Yacc does not support hexadecimal literals"
msgstr "POSIX Yacc ei tue heksadesimaaliliteraaleja"

#: src/scan-gram.l:1009
#, c-format
msgid "missing %s at end of file"
msgstr "puuttuva %s tiedoston lopussa"

#: src/scan-gram.l:1020
#, c-format
msgid "missing %s at end of line"
msgstr "puuttuva %s rivin lopussa"

#: src/scan-skel.l:141
#, c-format
msgid "unclosed %s directive in skeleton"
msgstr "sulkematon %s-direktiivi rungossa"

#: src/scan-skel.l:252
#, c-format
msgid "too few arguments for %s directive in skeleton"
msgstr "liian vähän argumentteja %s-direktiiville rungossa"

#: src/scan-skel.l:259
#, c-format
msgid "too many arguments for %s directive in skeleton"
msgstr "liian monta argumenttia %s-direktiiville rungossa"

#: src/symtab.c:131
#, c-format
msgid "POSIX Yacc forbids dashes in symbol names: %s"
msgstr "POSIX Yacc kieltää ajatusviivat symbolinimissä: %s"

#: src/symtab.c:326
#, c-format
msgid "%s redeclaration for %s"
msgstr "%s uudelleenesittely kohteelle %s"

#: src/symtab.c:335
#, c-format
msgid "%s redeclaration for <%s>"
msgstr "%s uudelleenesittely kohteelle <%s>"

#: src/symtab.c:344
#, c-format
msgid "symbol %s redeclared as a token"
msgstr "symboli %s on esitelty uudelleen merkkisymbolina"

#: src/symtab.c:345
#, c-format
msgid "symbol %s redeclared as a nonterminal"
msgstr "symboli %s on esitelty uudelleen nonterminal-symbolina"

#: src/symtab.c:385
#, c-format
msgid ""
"symbol %s is used, but is not defined as a token and has no rules; did you "
"mean %s?"
msgstr ""
"symbolia %s käytetään, mutta sitä ei ole määritelty merkkisymbolina eikä "
"sillä ole sääntöjä; tarkoititko %s?"

#: src/symtab.c:395
#, c-format
msgid "symbol %s is used, but is not defined as a token and has no rules"
msgstr ""
"symbolia %s käytetään, mutta sitä ei ole määritelty merkkisymbolina eikä "
"sillä ole sääntöjä"

#: src/symtab.c:534
#, c-format
msgid "POSIX yacc reserves %%type to nonterminals"
msgstr "POSIX yacc varaa %%type nonterminal-symboleille"

#: src/symtab.c:564
#, c-format
msgid "symbol %s redeclared"
msgstr "symboli %s on esitelty uudelleen"

#: src/symtab.c:588
#, c-format
msgid "nonterminals cannot be given a token code"
msgstr "nonterminal-symboleja ei voida antaa merkkisymbolikoodina"

#: src/symtab.c:591
#, c-format
msgid "redefining code of token %s"
msgstr "määritellään uudelleen merkkisymbolin %s koodi"

#: src/symtab.c:594
#, c-format
msgid "code of token %s too large"
msgstr "merkkisymbolin %s koodi on liian suuri"

#: src/symtab.c:631
#, c-format
msgid "string literal %s not attached to a symbol"
msgstr "merkkijonoliteraalia %s ei ole liitetty symboliin"

#: src/symtab.c:659
#, c-format
msgid "useless %s for type <%s>"
msgstr "kelpaamaton %s tyypille <%s>"

#: src/symtab.c:664
#, c-format
msgid "type <%s> is used, but is not associated to any symbol"
msgstr "tyyppiä <%s> käytetään, mutta sitä ei ole liitetty mihinkään symboliin"

#: src/symtab.c:709
#, c-format
msgid "nonterminals cannot be given a string alias"
msgstr "nonterminal-symboleja ei voida antaa merkkijonoaliaksina"

#: src/symtab.c:712
#, c-format
msgid "symbol %s used more than once as a literal string"
msgstr "symbolia %s on käytetty useammin kuin kerran literaalimerkkijonona"

#: src/symtab.c:715
#, c-format
msgid "symbol %s given more than one literal string"
msgstr "symboli %s on annettu useammassa kuin yhdessä literaalimerkkijonossa"

#: src/symtab.c:749
#, c-format
msgid "code %d reassigned to token %s"
msgstr "koodi %d liitetty uudelleen merkkisymboliin %s"

#: src/symtab.c:752
#, c-format
msgid "previous declaration for %s"
msgstr "edellinen esittely kohteelle %s"

#: src/symtab.c:1080
#, c-format
msgid "token number too large"
msgstr "merkkisymbolinumero liian suuri"

#: src/symtab.c:1151
#, c-format
msgid "the start symbol %s is undefined"
msgstr "aloitussymboli %s on määrittelemätön"

#: src/symtab.c:1155
#, c-format
msgid "the start symbol %s is a token"
msgstr "aloitussymboli %s on merkkisymboli"

#: src/symtab.c:1338
#, c-format
msgid "useless precedence and associativity for %s"
msgstr "kelpaamaton ensisijaisuus ja liitettävyys kohteelle %s"

#: src/symtab.c:1341
#, c-format
msgid "useless precedence for %s"
msgstr "kelpaamaton ensisijaisuus kohteelle %s"

#: src/symtab.c:1345
#, c-format
msgid "useless associativity for %s, use %%precedence"
msgstr "kelpaamaton liitettävyys kohteelle %s, käytä %%precedence"

#, fuzzy, c-format
#~ msgid "syntax error: invalid character: %c"
#~ msgstr "virheellinen merkki: %s"

#, c-format
#~ msgid "too many symbols in input grammar (limit is %d)"
#~ msgstr "liian monta symbolia syötekieliopissa (raja on %d)"

#  Koodissa midrule on keskellä oleva lohko, jota edeltää toprule ja jonka alla on bottomrule.
#~ msgid ""
#~ "Warning categories include:\n"
#~ "  'midrule-values'    unset or unused midrule values\n"
#~ "  'yacc'              incompatibilities with POSIX Yacc\n"
#~ "  'conflicts-sr'      S/R conflicts (enabled by default)\n"
#~ "  'conflicts-rr'      R/R conflicts (enabled by default)\n"
#~ "  'deprecated'        obsolete constructs\n"
#~ "  'empty-rule'        empty rules without %empty\n"
#~ "  'precedence'        useless precedence and associativity\n"
#~ "  'other'             all other warnings (enabled by default)\n"
#~ "  'all'               all the warnings except 'yacc'\n"
#~ "  'no-CATEGORY'       turn off warnings in CATEGORY\n"
#~ "  'none'              turn off all the warnings\n"
#~ "  'error[=CATEGORY]'  treat warnings as errors\n"
#~ msgstr ""
#~ "Varoituskategoriat sisältävät:\n"
#~ "  'midrule-values'    asettaa ja poistaa keskisääntöarvoja\n"
#~ "  'yacc'              yhteensopimattomuudet POSIX YACC -ohjelman kanssa\n"
#~ "  'conflicts-sr'      S/R-ristiriidat (käytössä oletuksena)\n"
#~ "  'conflicts-rr'      R/R-ristiriidat (käytössä oletuksena)\n"
#~ "  'deprecated'        vanhentuneet rakenteet\n"
#~ "  'empty-rule'        tyhjät säännöt ilman %empty\n"
#~ "  'precedence'        kelpaamaton etuoikeus ja liitännäisyys\n"
#~ "  'other'             kaikki muut varoitukset (oletuksena otettu "
#~ "käyttöön)\n"
#~ "  'all'               kaikki varoitukset\n"
#~ "  'no-CATEGORY'       käännä pois päältä kaikki varoitukset kategoriassa "
#~ "KATEGORIA\n"
#~ "  'none'              käännä pois kaikki varoitukset\n"
#~ "  'error[=KATEGORIA]' käsittele varoituksia virheinä\n"

#~ msgid ""
#~ "THINGS is a list of comma separated words that can include:\n"
#~ "  'state'        describe the states\n"
#~ "  'itemset'      complete the core item sets with their closure\n"
#~ "  'lookahead'    explicitly associate lookahead tokens to items\n"
#~ "  'solved'       describe shift/reduce conflicts solving\n"
#~ "  'all'          include all the above information\n"
#~ "  'none'         disable the report\n"
#~ msgstr ""
#~ "ASIAT on pilkuilla eroteltu luettelo, joka voi sisältää:\n"
#~ "  'state'        kuvaa tilat\n"
#~ "  'itemset'      täydentää ydinalkiojoukot niiden sulkeumalla\n"
#~ "  'lookahead'    eksplisiittisesti liittää ennakointimerkkisymbolit "
#~ "alkioihin\n"
#~ "  'solved'       kuvailee siirto/supistaminen -ristiriitojen "
#~ "ratkaisemisen\n"
#~ "  'all'          sisältää kaikki yllä mainitut tiedot\n"
#~ "  'none'         poistaa raportoinnin\n"

#~ msgid ""
#~ "FEATURE is a list of comma separated words that can include:\n"
#~ "  'caret'        show errors with carets\n"
#~ "  'all'          all of the above\n"
#~ "  'none'         disable all of the above\n"
#~ "  "
#~ msgstr ""
#~ "OMINAISUUS on pilkulla eroteltu sanojen luettelo, joka voi sisältää:\n"
#~ "  'caret'        näytä kaikki virheet sirkumfleksillä\n"
#~ "  'all'          kaikki yllä olevat\n"
#~ "  'none'         ota pois käytöstä kaikki yllä olevat\n"
#~ "  "

#~ msgid " type %d is %s\n"
#~ msgstr " tyyppi %d on %s\n"

#~ msgid "invalid $ value: $%d"
#~ msgstr "virheellinen $-arvo: $%d"

#~ msgid "symbol %s redefined"
#~ msgstr "symboli %s on määritelty uudelleen"

#~ msgid "user token number %d redeclaration for %s"
#~ msgstr "käyttäjämerkkisymbolinumeron %d uudelleenesittely kohteelle %s"

#~ msgid "removing of '%s' failed"
#~ msgstr "kohteen ’%s’ poistaminen epäonnistui"

#~ msgid "creation of a temporary file failed"
#~ msgstr "tilapäisen tiedoston luominen epäonnistui"

#~ msgid "saving stdin failed"
#~ msgstr "vakiosyötön tallentaminen epäonnistui"

#~ msgid "saving stdout failed"
#~ msgstr "vakiotulosteen tallentaminen epäonnistui"

#~ msgid "opening of tmpfile failed"
#~ msgstr "tilapäisen tiedoston tmpfile avaaminen epäonnistui"

#~ msgid "redirecting bison's stdout to the temporary file failed"
#~ msgstr ""
#~ "bison-vakiotulosteen edelleenohjaaminen tilapäiseen tiedostoon epäonnistui"

#~ msgid "redirecting m4's stdin from the temporary file failed"
#~ msgstr ""
#~ "m4-vakiosyötteen edelleenohjaaminen tilapäiseen tiedostoon epäonnistui"

#~ msgid "opening of a temporary file failed"
#~ msgstr "tilapäisen tiedoston avaaminen epäonnistui"

#~ msgid "redirecting m4's stdout to a temporary file failed"
#~ msgstr ""
#~ "m4-vakiotulosteen edelleenohjaaminen tilapäiseen tiedostoon epäonnistui"

#~ msgid "subsidiary program '%s' interrupted"
#~ msgstr "tytärohjelma ’%s’ on keskeytetty"

#~ msgid "subsidiary program '%s' not found"
#~ msgstr "tytärohjelmaa ’%s’ ei löytynyt"

#~ msgid "redirecting bison's stdin from the temporary file failed"
#~ msgstr ""
#~ "bison-vakiosyötteen edelleenohjaaminen tilapäiseen tiedostoon epäonnistui"

#~ msgid "ambiguous argument %s for %s"
#~ msgstr "ei-yksiselitteinen argumentti %s valitsimelle %s"

#~ msgid "Valid arguments are:"
#~ msgstr "Mahdolliset argumentit ovat:"

#~ msgid "%u bitset_allocs, %u freed (%.2f%%).\n"
#~ msgstr "%u bitset_allocs, %u vapautettu (%.2f%%).\n"

#~ msgid "%u bitset_sets, %u cached (%.2f%%)\n"
#~ msgstr "%u bitset_sets, %u tallennettu välimuistiin (%.2f%%)\n"

#~ msgid "%u bitset_resets, %u cached (%.2f%%)\n"
#~ msgstr "%u bitset_resets, %u tallennettu välimuistiin (%.2f%%)\n"

#~ msgid "%u bitset_tests, %u cached (%.2f%%)\n"
#~ msgstr "%u bitset_tests, %u tallennettu välimuistiin (%.2f%%)\n"

#~ msgid "%u bitset_lists\n"
#~ msgstr "%u bitset_lists\n"

#~ msgid "count log histogram\n"
#~ msgstr "lukumäärälokihistogrammi\n"

#~ msgid "size log histogram\n"
#~ msgstr "kokolokihistogrammi\n"

#~ msgid "density histogram\n"
#~ msgstr "tiheyshistogrammi\n"

#~ msgid ""
#~ "Bitset statistics:\n"
#~ "\n"
#~ msgstr ""
#~ "Bittivektoritilastot:\n"
#~ "\n"

#~ msgid "Accumulated runs = %u\n"
#~ msgstr "Kumuloituneet ajot = %u\n"

#~ msgid "cannot read stats file"
#~ msgstr "stats-tiedoston lukeminen epäonnistui"

#~ msgid "bad stats file size\n"
#~ msgstr "virheellinen stats-tiedostokoko\n"

#~ msgid "cannot write stats file"
#~ msgstr "stats-tiedostoon kirjoittaminen epäonnistui"

#~ msgid "cannot open stats file for writing"
#~ msgstr "stats-tiedoston avaaminen kirjoittamista varten epäonnistui"

#~ msgid "write error"
#~ msgstr "kirjoitusvirhe"

#~ msgid "Unknown system error"
#~ msgstr "Tuntematon järjestelmävirhe"

#~ msgid "%s: option '%s' is ambiguous; possibilities:"
#~ msgstr "%s: valitsin ’%s’ ei ole yksiselitteinen; mahdollisuudet:"

#~ msgid "%s: option '--%s' doesn't allow an argument\n"
#~ msgstr "%s: valitsin ’--%s’ ei salli argumenttia\n"

#~ msgid "%s: option '%c%s' doesn't allow an argument\n"
#~ msgstr "%s: valitsin ’%c%s’ ei salli argumenttia\n"

#~ msgid "%s: option '--%s' requires an argument\n"
#~ msgstr "%s: valitsin ’--%s’ vaatii argumentin\n"

#~ msgid "%s: unrecognized option '--%s'\n"
#~ msgstr "%s: tunnistamaton valitsin ’--%s’\n"

#~ msgid "%s: unrecognized option '%c%s'\n"
#~ msgstr "%s: tunnistamaton valitsin ’%c%s’\n"

#~ msgid "%s: invalid option -- '%c'\n"
#~ msgstr "%s: virheellinen valitsin — ’%c’\n"

#~ msgid "%s: option requires an argument -- '%c'\n"
#~ msgstr "%s: valitsin vaatii argumentin — ’%c’\n"

#~ msgid "%s: option '-W %s' is ambiguous\n"
#~ msgstr "%s: valitsin ’-W %s’ ei ole yksiselitteinen\n"

#~ msgid "%s: option '-W %s' doesn't allow an argument\n"
#~ msgstr "%s: valitsin ’-W %s’ ei salli argumenttia\n"

#~ msgid "%s: option '-W %s' requires an argument\n"
#~ msgstr "%s: valitsin ’-W %s’ vaatii argumentin\n"

#~ msgid "memory exhausted"
#~ msgstr "muisti loppui"

#~ msgid "cannot create pipe"
#~ msgstr "putken luominen epäonnistui"

#~ msgid "%s subprocess failed"
#~ msgstr "%s-aliprosessi epäonnistui"

#~ msgid "`"
#~ msgstr "”"

#~ msgid "'"
#~ msgstr "”"

#~ msgid ""
#~ "\n"
#~ "Execution times (seconds)\n"
#~ msgstr ""
#~ "\n"
#~ "Suoritusajat (sekunteja)"

#~ msgid " TOTAL                 :"
#~ msgstr " YHTEENSÄ              :"

#~ msgid "time in %s: %ld.%06ld (%ld%%)\n"
#~ msgstr "aika kohteessa %s: %ld.%06ld (%ld%%)\n"

#~ msgid "_open_osfhandle failed"
#~ msgstr "_open_osfhandle epäonnistui"

#~ msgid "cannot restore fd %d: dup2 failed"
#~ msgstr "ei voida palauttaa tiedostotunnistetta %d: dup2 epäonnistui"

#~ msgid "%s subprocess"
#~ msgstr "%s-aliprosessi"

#~ msgid "%s subprocess got fatal signal %d"
#~ msgstr "%s-aliprosessi sai kohtalokkaan signaalin %d"

#~ msgid "empty"
#~ msgstr "tyhjä"

#~ msgid "a ';' might be needed at the end of action code"
#~ msgstr "merkkiä ’;’ saatetaan tarvita toimintakoodin lopussa"

#~ msgid "future versions of Bison will not add the ';'"
#~ msgstr "tulevat Bison-versiot eivät lisää merkkiä ’;’"

#~ msgid "use of YYFAIL, which is deprecated and will be removed"
#~ msgstr "YYFAIL-käyttö, joka on vanhentunut ja poistetaan"

#~ msgid "redeclaration for default tagged %%destructor"
#~ msgstr "uudelleenesittely oletusmerkitylle %%destructor"

#~ msgid "redeclaration for default tagless %%destructor"
#~ msgstr "uudelleenesittely oletus-ei-merkitylle %%destructor"

#~ msgid "redeclaration for default tagged %%printer"
#~ msgstr "uudelleenesittely oletus-merkitylle %%printer"

#~ msgid "redeclaration for default tagless %%printer"
#~ msgstr "uudelleenesittely oletus-ei-merkitylle %%printer"

#~ msgid "state %d"
#~ msgstr "tila %d"

#~ msgid "stray '@'"
#~ msgstr "yksinäinen ’@’"

#~ msgid ""
#~ "undefined %%define variable `%s' passed to muscle_percent_define_get_loc"
#~ msgstr ""
#~ "määrittelemätön %%define-muuttuja ”%s” välitetty kohteelle "
#~ "muscle_percent_define_get_loc"

#~ msgid ""
#~ "undefined %%define variable `%s' passed to "
#~ "muscle_percent_define_get_syncline"
#~ msgstr ""
#~ "määrittelemätön %%define-muuttuja ”%s” välitetty kohteelle "
#~ "muscle_percent_define_get_syncline"

#~ msgid ""
#~ "undefined %%define variable `%s' passed to muscle_percent_define_flag_if"
#~ msgstr ""
#~ "määrittelemätön %%define-muuttuja ”%s” välitetty kohteelle "
#~ "muscle_percent_define_flag_if"

#~ msgid ""
#~ "undefined %%define variable `%s' passed to "
#~ "muscle_percent_define_check_values"
#~ msgstr ""
#~ "määrittelemätön %%define-muuttuja ”%s” välitetty kohteelle "
#~ "muscle_percent_define_check_values"

#~ msgid ""
#~ "Generate LALR(1) and GLR parsers.\n"
#~ "\n"
#~ msgstr ""
#~ "Tuota LALR(1) ja GLR -jäsentimet.\n"
#~ "\n"

#~ msgid "tokens %s and %s both assigned number %d"
#~ msgstr "merkkisymboleille %s ja %s on annettu sama numero %d"

#~ msgid "unrecognized escape sequence: %s"
#~ msgstr "tunnistamaton koodinvaihtosekvenssi: %s"

#~ msgid "%s: illegal option -- %c\n"
#~ msgstr "%s: virheellinen valitsin — %c\n"

#~ msgid ""
#~ "%@: syntax error: expected %0e or %1e or %2e or %3e or %4e or %5e or %6e "
#~ "before %u"
#~ msgstr ""
#~ "%@: syntaksivirhe: odotettiin %0e tai %1e tai %2e tai %3e tai %4e tai %5e "
#~ "tai %6e ennen %u"

#~ msgid "nonterminals cannot be given an explicit number"
#~ msgstr "nonterminal-symboleita ei voida antaa eksplisiittisenä numerona"

#~ msgid "deprecated directive, use %s"
#~ msgstr "vanhentunut direktiivi, käytä %s"

#~ msgid "%s: option '%s%s' requires an argument\n"
#~ msgstr "%s: valitsin ’%s%s’ vaatii argumentin\n"

#~ msgid "CPU user"
#~ msgstr "Prosessorikäyttäjä"

#~ msgid "CPU system"
#~ msgstr "Prosessorijärjestelmä"

#~ msgid "wall clock"
#~ msgstr "seinäkello"
